# 字典与js里面的有属性的对象相似，里面可以放属性值和属性，在Python称为key值和value值
# 虽然都有花括号，但是和集合是两种类型，集合:set,字典:dict,元组:tuple,列表:list

# 出现重复的key时，会保留最后的那个key
# key和value可以为任意数据类型,但是key不能是字典类型
my_dict = {"棕熊": 99, "棕熊": 88, "周杰伦": 99}
print(my_dict)  # {"棕熊": 88, "周杰伦": 99}

# 获取value值，这里和js不同，0用的是类似数组的写法来获取
print("my_dict['棕熊']", my_dict['棕熊'])

# 定义一个空字典
my_dict2 = {}
my_dict3 = dict()
print(my_dict2)  # {}
print(my_dict3)  # {}

# 案例，定义嵌套字典
student_list = {
    '熊1': {
        '语文': 60,
        '数学': 70,
        '英语': 55,
    },
    '熊2': {
        '语文': 60,
        '数学': 70,
        '英语': 55,
    }
}
# 新增元素 和更新元素
student_list['熊3'] = {
    '语文': 60,
    '数学': 70,
    '英语': 55,
}
student_list['熊1']['语文'] = 90
# 删除元素同样也可以用pop()
student_list.pop('熊2')
print('student_list:', student_list)

# 获取所有的key
print('keys:', student_list.keys())

# 遍历字典
for x in student_list.keys():
    print(x)
for x in student_list:#和上的效果是同样的
    print(x)
    print(student_list[x])

# 清空元素同样也可以用clear()
student_list.clear()
print('student_list:', student_list)
